python连接mysql数据库增删改查 |
您所在的位置:网站首页 › pymysql 删除数据 › python连接mysql数据库增删改查 |
python数据库的简单应用
什么是 PyMySQL?PyMySQL 安装连接数据库创建数据表增加一条记录更新一条记录查找信息删除一条信息删除一张表
什么是 PyMySQL?
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。 PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。 PyMySQL 安装 $ pip3 install PyMySQL 连接数据库 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Connection(): try: db = pymysql.connect(host="localhost", user="root", password="123", database="students") print('数据库连接成功!') except pymysql.Error as e: print('数据库连接失败'+str(e)) finally: db.close() Connection() 1 导入数据库模块2 调用pymysql下的connect函数连接数据库捕捉异常,出错的时候方便排除错误 connect()函数 host 是 localhost user 是 用户,使用root或者其他用户 password 是 数据库密码,填写自己的密码 database 是 我们要连接哪一个数据库,我连接的是students数据库 运行结果: 创建数据表 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def CreateTable(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() try: cur.execute('DROP TABLE IF EXISTS student') sqlQuery = '''CREATE TABLE student( id int primary key, name CHAR(20) NOT NULL , classroom CHAR(20), email CHAR(20), age int )''' cur.execute(sqlQuery) print("数据表创建完成!") except pymysql.Error as error: print("数据表创建失败:" + str(error)) db.rollback() finally: db.close() CreateTable()在students数据库中创建student表 用db的cursor创建一个游标SQL语句太长就保存下来使用游标的execute函数执行SQL语句如果出现异常使用rollback函数进行数据回滚操作运行结果: 增加一条记录 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Insert(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() sqlQuery = " INSERT INTO Student (id, name, classroom, email, age) VALUE (%s,%s,%s,%s,%s) " value = (1010, "大黄","1班", "123.com", 20) try: cur.execute(sqlQuery, value) db.commit() print('数据插入成功!') except pymysql.Error as error: print("数据插入失败:" + str(error)) db.rollback() finally: db.close() Insert()在students数据库的student表中插入一条学生记录 sql语句的参数保存在value中如果插入失败,就进行数据回滚操作如果成功要进行commit提交操作最后关闭运行结果: 更新一条记录 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Update(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() sqlQuery = "UPDATE Student SET age= %s WHERE name=%s" name = "大黄" age = 19 value = age, name try: cur.execute(sqlQuery, value) db.commit() print('数据更新成功!') except pymysql.Error as e: print("数据更新失败:" + str(e)) # 发生错误时回滚 db.rollback() finally: db.close() Update()更新students数据库的student表的一条记录 运行结果: 查找信息 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Find(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() sqlQuery = "SELECT * FROM student" try: cur.execute(sqlQuery) results = cur.fetchall() for row in results: print('学号:%s , 姓名:%s ,班级:%s , 邮箱:%s , 年龄:%s ' % (row[0], row[1], row[2], row[3],row[4])) except pymysql.Error as e: print("数据查询失败:" + str(e)) finally: db.close() Find()查询students数据库的student表的数据 游标的fetchall()函数会拿到所有结果循环输出所有结果运行结果: 删除一条信息 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Deletedata(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() sqlQuery = "DELETE FROM Student where name=%s" try: cur.execute(sqlQuery, "大黄") db.commit() print('Date Deleted Successfully') except pymysql.Error as e: print("数据删除失败:" + str(e)) # 发生错误时回滚 finally: db.rollback() Deletedata()删除students数据库的student表的一条记录 运行结果: 删除一张表 #!/usr/bin/python # -*- coding: UTF-8 -*- import pymysql def Delete(): db = pymysql.connect(host="localhost", user="root", password="123", database="students") cur = db.cursor() sqlQuery = 'DROP TABLE IF EXISTS student' try: cur.execute(sqlQuery) db.commit() print('表删除成功!') except pymysql.Error as e: print("表删除失败"+str(e)) finally: db.close() Delete()删除students数据库的student表 运行结果: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |